package main

import (
	"fmt"
)

func main() {
	// b, _ := json.Marshal(nil)
	// fmt.Println(string(b))
	fmt.Println("hello")
	// params := make([]interface{}, 0)
	// params = append(params, 1)
	// params = append(params, "AAAA")
	// params = append(params, true)
	// fmt.Println(fmt.Sprint(params))

	// // defer func() {
	// // 	if err := recover(); err != nil {
	// // 		fmt.Println("BBBBB", err, reflect.TypeOf(err).Elem().Name())
	// // 	}
	// // }()

	// // panic(fmt.Errorf("AAAAAAAA"))

	// rankers := make([]*Ranker, 0)
	// rankers = append(rankers, &Ranker{1, 100, 20, 1111})
	// rankers = append(rankers, &Ranker{2, 200, 30, 2222})
	// rankers = append(rankers, &Ranker{3, 200, 40, 2222})
	// rankers = append(rankers, &Ranker{4, 200, 20, 2222})
	// rankers = append(rankers, &Ranker{5, 600, 20, 2222})
	// rankers = append(rankers, &Ranker{6, 600, 20, 1111})
	// rankers = append(rankers, &Ranker{7, 600, 20, 3333})
	// rankers = append(rankers, &Ranker{8, 100, 20, 1111})

	// sort.Slice(rankers, func(i, j int) bool {
	// 	result := rankers[i].Score - rankers[j].Score
	// 	if result != 0 {
	// 		if result > 0 {
	// 			return true
	// 		} else {
	// 			return false
	// 		}
	// 	}
	// 	result = rankers[i].SubScore - rankers[j].SubScore
	// 	if result != 0 {
	// 		if result > 0 {
	// 			return true
	// 		} else {
	// 			return false
	// 		}
	// 	}
	// 	result = rankers[i].Time - rankers[j].Time
	// 	if result != 0 {
	// 		if result > 0 {
	// 			return false
	// 		} else {
	// 			return true
	// 		}
	// 	}
	// 	return rankers[i].Id < rankers[j].Id
	// })

	// for _, ranker := range rankers {
	// 	fmt.Println(ranker)
	// }
}

type Ranker struct {
	Id       int64
	Score    int64
	SubScore int64
	Time     int64
}
